package com.jade.bss.admin.principal;

import java.security.Principal;

/**
 * 义Principal的创建和type获取接口。
 *
 * @author sky
 * @version 1.0 13-4-18 上午9:50
 */
public interface PrincipalFactory
{
    /**
     * 根据Principal的类型和名称创建Principal实例.
     *
     * @param type 身份类型
     * @param name 身份名称
     * @return 身份的实例对象
     */
    public Principal createPrincipal(String type, String name);

    /**
     * 根据Principal对象获取Principal的类型。
     *
     * @param principal 身份对象
     * @return 身份类型
     */
    public String getPrincipalType(Principal principal);
}